#ifndef SYNC_COUNTER_NELI_H
#define SYNC_COUNTER_NELI_H
#include <linux/net.h>
#include <net/genetlink.h>

#define SYNC_COUNTER_NOTIFY_GROUP "notify"
enum {
    SYNC_COUNTER_A_UNSPEC,
    SYNC_COUNTER_A_MSG,
    __SYNC_COUNTER_A_MAX,
};

#define SYNC_COUNTER_A_MAX (__SYNC_COUNTER_A_MAX - 1)

typedef int (*genl_start_handler_t)(struct sk_buff *, struct genl_info *);
typedef int (*genl_stop_handler_t)(struct sk_buff *, struct genl_info *);

enum {
    SYNC_COUNTER_C_START,
    SYNC_COUNTER_C_STOP,
    __SYNC_COUNTER_C_MAX,
};
#define SYNC_COUNTER_C_MAX (__SYNC_COUNTER_C_MAX - 1);

int setup_netlink(
        const char *family_name,
        genl_start_handler_t start_handler,
        genl_stop_handler_t stop_handler
);


int boardcast_signal_start(int seq);

int boardcast_signal_stop(void);

#endif
